namespace Medical.Domain
{
    /// <summary>
    /// 挂号单模板实体
    /// </summary>
    public class RegistrationSlipTemplate
    {
        /// <summary>
        /// 模板ID
        /// </summary>
        public long TemplateId { get; set; }

        /// <summary>
        /// 模板名称（标题文本：挂号单）
        /// </summary>
        public string TemplateName { get; set; } = string.Empty;

        /// <summary>
        /// 描述
        /// </summary>
        public string? Description { get; set; }

        /// <summary>
        /// 是否启用
        /// </summary>
        public bool IsActive { get; set; } = true;

        /// <summary>
        /// 是否默认模板
        /// </summary>
        public bool IsDefault { get; set; } = false;

        /// <summary>
        /// 优先级规则（JSON字符串）
        /// </summary>
        public string? PriorityRules { get; set; }

        /// <summary>
        /// 配置的字段列表（JSON字符串，存储打印项目）
        /// </summary>
        public string? ConfiguredFields { get; set; }

        /// <summary>
        /// 是否已删除（逻辑删除）
        /// </summary>
        public bool IsDeleted { get; set; } = false;

        /// <summary>
        /// 删除时间
        /// </summary>
        public DateTime? DeletedAt { get; set; }

        /// <summary>
        /// 删除人
        /// </summary>
        public string? DeletedBy { get; set; }

        /// <summary>
        /// 创建时间
        /// </summary>
        public DateTime CreatedAt { get; set; } = DateTime.Now;

        /// <summary>
        /// 更新时间
        /// </summary>
        public DateTime UpdatedAt { get; set; } = DateTime.Now;
    }
}

